//: concurrency/DaemonsDontRunFinally.java
package concurrency; /* Added by Eclipse.py */

// Daemon threads don't run the finally clause
import java.util.concurrent.*;
import static net.mindview.util.Print.*;

class ADaemon implements Runnable {
	public void run() {
		try {
			print("Starting ADaemon");
			//throw new InterruptedException();
			TimeUnit.SECONDS.sleep(1);
		} catch (InterruptedException e) {
			print("Exiting via InterruptedException");
		} finally {
			print("This should always run?");
		}
	}
}

public class DaemonsDontRunFinally {
	public static void main(String[] args) throws Exception {
		Thread t = new Thread(new ADaemon());
		//t.setDaemon(true);
		t.start();
		//TimeUnit.SECONDS.sleep(1);
	}
} /* Output:
Starting ADaemon
*///:~
